The present invention relates to a programmable logic controller for the sequential control of various devices and apparatus and deals more specifically with a firmware transitional programmable sequential logic controller.
A typical programmable logic controller (PLC) essentially comprises input and output modules, a memory and a processing unit (logic circuitry or microprocessor). The input modules accept signals from the external devices in an installation under control (e.g. switches, thermocouples, valves ..). These input signals are measurements of physical magnitudes such as pressure, flow rate, temperature and so on, which are then converted into usable information in analog or digital form. The processing unit drives every function of the controller; it directs the scanning of input signals, evaluates these relative to the information stored in the memory and then triggers output signals to the output modules which control the external devices. The memory associated with the PLC stores the control plan in the form of a program or instruction set and generally includes all information relating to how the input and output data should be processed. A programming device is used with the PLC to load the program into the memory, usually by means of a programming language. The programming device can range in sophistication from a simple manual programmer to a full fledged CRT terminal.
The operation of known PLC's are based on the detection of a combination of values of input variables and use software stored in memories to produce the necessary command signals to control the external devices in accordance with the given combinations of input variables. In spite of all their advantages as against the microcomputers and the hard-wired logic controllers, the known PLC's are perceived by users as presenting certain handicaps which still constitute obstacles to a wider adoption. To quote the main ones:
1. In the design phase, the software development effort takes on a disproportionate importance which makes a direct dialogue between the system engineer and the machine difficult. The controller is not transparent enough for the system engineer who is not a computer scientist. As a matter of fact, ladder diagrams and other similar methods do make controllers user-friendly, but this takes place only after the main design work has been accomplished. Therefore, a need arises for a simple and universal programming method capable of accommodating sequential as well as combinational controls. PA0 2. The relative slowness of the known PLC's (an average of 50 milliseconds between two consecutive input scannings) does not enable them to compete with hard-wired logic apparatus (having an average of less than 200 nanoseconds between two consecutive input scannings) in some sequential control applications where speed is essential such as, for example, in electric power distribution monitoring or other real time applications. PA0 3. It is generally not possible to take into account all significant events that may influence the evolutions of the sequences in a controlled system. This limitation practically bars the known PLC's from environments where a strict quality assurance is required (e.g., some applications in nuclear engineering) for the known PLC's cannot prevent the controlled system from being threatened with unforeseeable and potentially dangerous evolutions.
The object of this invention is to provide a firmware transitional logic controller which overcomes the drawbacks and limitations of the known programmable logic controllers. A further object of the invention is to provide a firmware transitional logic controller which is especially designed for sequential control and which furthermore allows for parallel operations, i.e. simultaneous processing of various tasks by different units in a coordinated fashion, with or without hierarchy.